package com.gutsyzhan.yusiailangchain4j.controller;

import com.gutsyzhan.yusiailangchain4j.assistant.SeparateChatAssistant;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/prompt")
public class PromptController {
    @Autowired
    private SeparateChatAssistant separateChatAssistant;

    /**
     * 测试系统提示词
     */
    @GetMapping("/systemPrompt")
    public String systemPrompt(){
        return separateChatAssistant.chat(3,"今天几号？应该吃啥子嘛?");
    }

    /**
     * 测试系统提示词
     */
    @GetMapping("/systemPromptV2")
    public String systemPromptV2(){
        return separateChatAssistant.chatFromResource(3,"今天几号？应该吃啥子嘛?");
    }

    /**
     * 测试用户提示词
     */
    @GetMapping("/userPrompt")
    public String userPrompt(){
        return separateChatAssistant.chatUser(4,"张三");
    }

    /**
     * 测试提示词综合使用
     */
    @GetMapping("/promptAll")
    public String promptAll(){
        return separateChatAssistant.chatComplex(5,"我是谁，多大了？","王五",20);
    }

    /**
     * 测试提示词调用函数调用
     */
    @GetMapping("/promptTool")
    public String promptTool(){
        return separateChatAssistant.chatTool(6,"6+9等于多少？98-17等于多少？255的平方根是多少？");
    }
}
